package typejump.engine;

import typejump.objects.GameObject;

/**
 * Abstract class representing some action that can occur in-game
 * @author g
 *
 */
public abstract class GameAction {
	/**
	 * Performs some action which may use the calling object and/or the
	 * "other" object. Either or both may be null.
	 * @param caller
	 * @param other
	 */
	public abstract void act(GameObject caller, GameObject other);
	public void act(GameObject caller) {
		act(caller, null);
	}
	
	public void act() {
		act(null);
	}
}
